//  1.定义
var message;
console.log('第三行中的message', message)  // undefined

// 2.合法,但不推荐
var message2;
message2 = 100;
console.log('第8行中的message2', message2)  // 100

// 3.var 声明作用域
function test() {
    var message3 = "hi"  // 局部变量
}
test();
// console.log('第15行中的message3',message3)  // 报错

// 4. 如果把3中的var去掉,就变成了全局作用域
function test() {
     message4 = "hi"  // 局部变量
}
test();
console.log('第15行中的message4',message4,global.message4)  // hi

// 5.var变量提升
function foo(){
    console.log('第26行age',age)  // undefined
    var age = 26;
}
foo();

/*
   可以作如下的理解
   function foo(){
    var age;
    console.log('第26行age',age)  // undefined
    age = 26;
}
 */